Cooperation and coordination of constraint solvers
نویسنده
چکیده
Declarative programming languages base on the idea that programs should be as close as possible to the problem specification and domain. Programs of these languages usually consist of directly formulated mathematical objects, i.e. relations and functions. Accordingly, declarative languages are distinguished into logic, functional, functional-logic, and constraint programming languages. Even if constraint programming is a young development in declarative programming languages, meanwhile, there is a wide range of constraint programming languages, and many domains and associated constraint solving mechanisms have been investigated. Using constraint programming, problems are specified by means of constraints. A constraint is usually a first order formula which describes properties of objects or relations between them. Problems described by constraints are handled by constraint solvers, i.e. specific algorithms for particular domains which mostly allow to check satisfiability of constraints, i.e. to solve constraints, to compute entailed constraints, and even to find variable assignments such that the constraints specifying the problem are satisfied. Though the paradigm of constraint programming offers efficient mechanisms to handle constraints of various domains, one constraint solver can only handle constraints of a particular constraint system. Thus, it is often desirable and advantageous to combine several constraint systems and the associated constraint solving techniques because this combination makes it possible to solve problems that none of the single solvers can handle alone. In this work, we propose a general scheme for the cooperation of constraint solvers. The base of our system is a uniform interface for constraint solvers which allows a fine-grain formal specification of information exchange between constraint solvers. On top of this interface, we develop an open and flexible combination mechanism for constraint solvers. The combination is open in the sense that whenever a new constraint system with associated constraint solver (satisfying certain properties) arises, it can be easily incorporated into the overall system independently of its domain and the language in which the constraint solver is implemented. It is flexible because
منابع مشابه
Coordination-Based Solver Cooperation in DICE
DICE (DIstributed Constraint Environment) is a software framework, implemented in the Manifold coordination language, for constructing distributed constraint solvers. Currently it supports the cooperation of solvers that can act as a domain reduction operator inside a constraint propagation algorithm. In this paper we propose a number of extensions to the framework, that will provide support fo...
متن کاملStrategies for the Efficient Solution of Hybrid Constraint Logic Programs
Meta-S is a system for defining the cooperation and coordination of constraint solvers to attack hybrid constraint problems. The integration of a logic programming language into this system by considering the language evaluation mechanism resolution as constraint solver yields a CLP language with support for solver cooperation. Using the strategy definition framework of Meta-S we define classic...
متن کاملA Fully Sound Goal Solving Calculus for the Cooperation of Solvers in the CFLP Scheme
The CFLP scheme for Constraint Functional Logic Programming has instances CFLP (D) corresponding to different constraint domains D. In this paper, we propose an amalgamated sum construction for building coordination domains C, suitable to represent the cooperation among several constraint domains D1, . . . ,Dn via a mediatorial domain M. Moreover, we present a cooperative goal solving calculus ...
متن کاملOpenSolver: A Coordination-Enabled Abstract Branch-and-Prune Tree Search Engine
Coordination programming deals with building complex software systems from largely autonomous component systems. Cooperative constraint solving (see for example [1]), which is widely recognized as a means to improve efficiency of constraint solving, is an area that may benefit from techniques developed in coordination programming, because the solvers that we want to combine are generally autono...
متن کاملPlaying with TOY: Constraints and Domain Cooperation
This paper describes T OY, an implementation of a Constraint Functional Logic Programming scheme CFLP (C), where C is a coordination domain involving the cooperation among several constraint domains D1, ..., Dn via a mediatorial domain M . This implementation follows a cooperative goal solving calculus for CFLP (C) based on lazy narrowing, invocation of solvers for each domain Di, and projectio...
متن کاملA Proposal for the Cooperation of Solvers in Constraint Functional Logic Programming
This paper presents a proposal for the cooperation of solvers in constraint functional logic programming, a quite expressive programming paradigm which combines functional, logic and constraint programming using constraint lazy narrowing as goal solving mechanism. Cooperation of solvers for different constraint domains can improve the efficiency of implementations since solvers can take advanta...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001